File: variable_length_array

package info (click to toggle)
disulfinder 1.2.11-12
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 15,232 kB
  • sloc: cpp: 15,877; makefile: 2,530; ansic: 1,233; sh: 77
file content (35 lines) | stat: -rw-r--r-- 1,198 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Author: Laszlo Kajan <lkajan@debian.org>
LastChanged: Sun, 07 Sep 2014 20:49:59 +0200
Description: reimplement variable length arrays properly for C++

--- a/disulfind/src/Input/buildXfolds.cpp
+++ b/disulfind/src/Input/buildXfolds.cpp
@@ -13,7 +13,7 @@
   std::ifstream in(example_file);
   assert(in.good());
   std::list<std::string> examples;
-  std::vector<std::string> fold_examples[folds_number];
+  std::vector< std::vector<std::string> > fold_examples(folds_number);
   std::list<std::string>::iterator iter;
   std::string buf;
   
--- a/disulfind/src/Output/utils.cpp
+++ b/disulfind/src/Output/utils.cpp
@@ -55,7 +55,7 @@
   if( nobridges==0 )
     return bridges;
   
-  unsigned int start_bridge[nobridges], end_bridge[nobridges];
+  std::vector<unsigned int> start_bridge(nobridges), end_bridge(nobridges);
 
   for(unsigned int i=0; i < nobridges; i++){
     start_bridge[i] = ind_bridges[i].first;
@@ -80,7 +80,7 @@
 
   // make bridges representations
   bridges.resize(nocrossings+1);
-  unsigned int activebridges[nobridges];
+  std::vector<unsigned int> activebridges(nobridges);
   for(unsigned int i=0; i<nocrossings; i++ ) {
     activebridges[i] = 0;
     bridges[i] = "";