[Rcpp-devel] IntegerVector initialization

Dirk Eddelbuettel edd at debian.org
Fri Jan 13 01:00:35 CET 2012


On 13 January 2012 at 00:28, Gregor Kastner wrote:
| > | This is a minor thing but caused some confusion to me:
| > | 
| > | IntegerVector foo1(2, 4.0);  // works
| > | IntegerVector foo2(2, 4);    // throws error
| > 
| > What were you expecting with the second argument?  A 'fill' value?
| > Arguably, int should then work.
| 
| Yes, inspired by
| 
| // ... with a default for all values
| NumericVector xx(10, 2.0);
| 
| on page 1 of Rcpp-quickref's "Create simple vectors" box.

Very reasonable assumption :)   That seems to be a buglet.

| > | while
| > | 
| > | IntegerVector bar1 = IntegerVector::create(4.0, 4.0);  // works
| > | IntegerVector bar2 = IntegerVector::create(4, 4);      // works
| > 
| > ::create is very different from the constructors above.
| 
| Sure, but in this case I get the same results: "c(4L,4L)", right?

Correct.
 
Dirk

-- 
"Outside of a dog, a book is a man's best friend. Inside of a dog, it is too
dark to read." -- Groucho Marx


More information about the Rcpp-devel mailing list