C++ :: Compile Error With Static Template Function

Nov 29, 2012

The below code compiles without error using VS 2012 but with g++ 4.1.2 I get this error:

Code:
main.cpp: In function 'int main(int, char**)':
main.cpp:37: error: no matching function for call to 'StringHelper::stringToNumeric(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)'

Here is the code:

#include <string>
#include "boost/lexical_cast.hpp"
using boost::lexical_cast;
using boost::bad_lexical_cast;
class StringHelper {

[Code] ....

This is part of a larger program so in reality StringHelper has more static functions but this example does produce the error the same as the code when in the larger program.

To get it to compile under g++ I had to assign the return value from substr() to a string and pass that string to stringToNumeric. Why do I have to do this for g++ and not VS? Do I have something wrong with my template function that g++ is calling out and VS is not?

View 4 Replies


ADVERTISEMENT

C++ :: Static Variable And Function With Template

Jul 18, 2012

I try to create small project in order to better understand how key word static works with templates . However some compiles errors crush my plan.

1>------ Build started: Project: 4.2b - Ex 1. Static Variable for Array Def Size. Templates, Configuration: Release Win32 ------
1> main.cpp
1>c:all myс++ha level 6solution level 6solution level 64.2b - ex1. static variable for array def size. templatesarray.cpp(40): error C2724: 'Array<Type>:efaultSize' : 'static' should not be used on member functions defined at file scope

[Code] .....

View 7 Replies View Related

C++ :: Binary Function Compile Error

Mar 8, 2013

I wrote a binary function based on existing template:

template <class T> struct percentage : binary_function <T,T,double> {
double operator() (const T& x, const T& y) const
{return x*1.0/(x+y);}
};

I call it in form of percentage<int>() When I compile, it's indicated: error C2143: syntax error : missing ',' before '<' I use VC 2012.

View 5 Replies View Related

C/C++ :: Compile Error With Calloc Function

Sep 24, 2014

i was working to compile the code below. Unfortunately it didn't compile and give me the known error error: attempt to use poisoned "calloc".

This is how i compile it :

gcc -I/usr/lib/i386-linux-gnu/gcc/i686-linux-gnu/4.5/plugin/include -fPIC -O0 -Wall -pedantic -std=c99 -c decode.c decode.o

decode.c
#include <stdio.h>
#include <coretypes.h>
#include <gcc-plugin.h>
#include <gimple.h>
#include <tree.h>

[code]....

View 1 Replies View Related

C++ :: Error - Reference To Non Static Function Must Be Called?

Feb 27, 2013

So on lines 36 - 39 (The commented out functions) is where I'm sure is causing this error because once I don't comment them out pretty much everywhere Flink or Rlink is used or defined I get this error.

#ifndef nodes_Nodes_h
#define nodes_Nodes_h
#include <cstdlib>

[Code]....

View 4 Replies View Related

C++ :: Error Using (this) Pointer In Static Members Function?

Sep 4, 2012

I am trying to use 'this' pointer but i am confused why 'this' pointer is not available for static member functions.

Code:
#include <iostream>
#include <fstream>
#include <stdlib.h>
using namespace std;
const int MAX = 20;
const int MAXPTR = 100;
class name {
private :
char fname[MAX], mname[MAX], lname[MAX];

[code].....

I am using GNU GCC Compiler via Code::Block

Error : 'this' is unavailable for static member functions

View 4 Replies View Related

C++ :: Undefined Reference Error When Accessing Static Variable Inside Member Function

Feb 10, 2013

I am modifying a set of static variables inside of the class's member function. The static variables are private. An example of what I'm doing is as below,

utilities.h
-----------
class utilities {
private:
static int num_nodes;

public:
void parse_details(char* );

[Code] ....

I get a compilation error in the function void utilities::parse_details(char* filename)

which says: undefined reference to `utilities::num_nodes'

compiler: g++

View 2 Replies View Related

C/C++ :: Error C2995 Function Template Has Already Been Defined

Apr 10, 2014

I have been trying to compile this program for 3 days. he subject is my error. I know it has something to do with including the cpp file with the header file however my textbook says this is what I must do in order to use templates. I have tried 2 compilers Code Blocks and Microsoft Visual C++ express 2010.

Here is my code:

header file
#pragma once
#ifndef _NODE
#define _NODE
template<class ItemType>
class Node {

[Code] ....

View 9 Replies View Related

C++ :: Error Returning Template Class From Member Function

Apr 30, 2012

When I do this:

// header file:
#include <list>
using namespace std;
class myClass {
list<int> myMethod();
};

// cpp file:

list<int> myClass::myMethod() {
}

In the cpp file, 'myMethod' is underlined in red and when I hover over it, it says:

"std::list<int, std::allocator<int>> myClass::myMethod()

Error: declaration is incompatible with "<error-type> myClass::myMethod()""

But when I make it as a standalone function, outside a class, with no pre-declaration, there is no problem.

View 8 Replies View Related

C++ :: Static And Template Sanity Check?

Sep 6, 2013

Can people just do a quick sanity check of this concept?

I'm playing around with a technique to parameterise a template with the largest 'sizeof' result for a set of classes.

A, B, C & D are classes with 1, 2, 3 & 4 members respectively.

e is an instance of E, who's array member is sized according to the largest size of A, B, C or D.

Code:

// MaxSizeOf for four parameters.
template <const size_t S1,
const size_t S2,
const size_t S3 = 0,
const size_t S4 = 0>
struct MaxSizeOf

[code].....

View 11 Replies View Related

C++ :: Initializing Static Field As A Template Object

Aug 26, 2014

I need a static hash table to keep track of all objects of a particular type that are instantiated in a Qt application but I have never used a template class as a static member object before and I can't seem to figure out how to initialize it. QHash is the hash table class that follows the template convetion:

template<class key, class data>

QString is probably self explanatory.

Example Header:

class MyClass {
...
private:
static QHash<QString, MyClass*> instanceTable;
}

Here is my source that doesn't compile.

Example Source

#include header.h
// using default constructor for table...
QHash<QString key, MyClass* instance> MyClass::instanceTable(); // gives Error below.
// Error in above line is "Declaration is incompatible with QHash<QString, Myclass*>"

I have tried doing it a number of different ways and none of them work. How do you initialize a static template object?

View 2 Replies View Related

C++ :: Typedef Template With Static Const Member?

Apr 18, 2013

class Tracker {
public:
static const int type;
typedef cv_types::CvType<type>::type_t type_t;
};
const int Tracker::type = 1;

gives me the error:

'I' : invalid template argument for 'cv_types::CvType', expected compile-time constant expression

Shouldn't the static const int be a compile time constant?

How would I specify it, so that it works?

PS.: The code works with #define type 1 at the top of the file and without the static const int.

View 3 Replies View Related

C++ :: Const Static Members In A Template Class?

Jan 17, 2013

I have a little problem with template classes and their specialization. Here is a short example:

template <typename T>
struct A{
// some typedefs

[Code]....

The above example is not compiling, because of the assignment of the const static double. Double needs a constructor, but that doesn't work (or seems not to work) with static.

I'm not sure, if it works at all in C++ that way. All I want is a template struct with some typedefs and a constant which is different for different specializations. Don't think it has to be static, but that would be better style, wouldn't it?

View 3 Replies View Related

C :: Ubuntu File Compile Error GCC

Sep 27, 2014

what can i do to fix ? why do i get the error ?

View 2 Replies View Related

C++ ::  Palindrome Program Compile Error

Jan 16, 2014

Here is the code which I wrote in Turbo C++...its giving errors..

#include<iostream.h>
#include<conio.h>
#include<stdio.h>
voidmain() {
clrscr();

[code]....

View 8 Replies View Related

C :: Library Of Functions - Getting Error At Compile Time

Nov 19, 2013

So I made a library for a whole bunch of functions and when i compile it, it says"Unresolved external symbol_(Name of function here) referenced in function main.

View 1 Replies View Related

C++ :: Directory Name Must Immediately Follow -I Compile Error

Oct 17, 2013

I am trying to compile some code under opensuse 12.2. The code compiles fine under cygwin and CentOS. Under suse, I get the error "directory name must immediately follow -I"

This is the place in make where the error happens.

Code:
g77-3.3 -I ./src/src_common_depend/ -O2 -DVERNUM=6 -c -o bld_dir/FortranA.o src/src_client_main/FortranA.FOR
f771: error: directory name must immediately follow -I

The includes are specified in the make file with,
SOURCELOC = ./src
INCLUDES = -I ${SOURCELOC}/src_common_depend/

These are common includes that are used by more than one applications and so are stored in a common location.

I have tried leaving off the ./ and the trailing /

SOURCELOC = src
INCLUDES = -I ${SOURCELOC}/src_common_depend

And various similar combinations, including parenthesis instead of the curly braces.

I'm not sure why gcc under suse would be particular about this syntax when gcc under other distros seem to think it's fine.

This is the compile rule that g77 is implementing where the error occurs:

# compile src fortran objects with fortran preprocessor
$(BDIR)/%.o: $(SOURCELOC)/src_client_main/%.FOR
$(FCOMP) $(FCFLAGS) $(VFLAGS) -c -o $@ $<

View 11 Replies View Related

C++ ::  how To Declare Template Function Inside Template Class

Dec 5, 2013

I'm trying to implement a simple template array class, but when i came into the operator< i actually have to use a template :

my code is something like :

template<typename _Type, std::size_t _Size>
class array {
public :

[Code] ......

but i am having an error of shadows template param 'class _Type' is it w/ the name conflict between the array template parameter and the function template parameter ?

View 6 Replies View Related

C++ ::  Writing A Function Template With Template Arguments?

Mar 14, 2014

I have a function:

template<class Iterator, class T>
void a(Iterator, Iterator, const T&);

and I want to be able to simplify calls to 'a' with calls like

a(someIteratableContainer);

instead of having to call:

a(someIteratableContainer.begin(), someIteratableContainer.end(), valueOfTheContainersElementType);

I also want to be able to generalize the function to handle any of the standard iteratable contains: array, vector, deque, whatever.

I was under the impression I could write:

template<template<class T> class U> a(U<T>& container) {
a(container.begin(), container.end(), g(T()));
}

where 'g()' returns an object of the element type. However, the compiler is claiming, no matter how I write a call to the overload, the original template is selected and/or the overload is invalid, depending on the various ways I attempt to write said overload.

View 7 Replies View Related

C++ :: How To Initialize Static Member Of Class With Template And Type Of Nested Class

Oct 7, 2014

How to initialize a static member of a class with template, which type is related to a nested class?

This code works (without nested class):

#include<iostream>
using namespace std;
struct B{
B(){cout<<"here"<<endl;}
};
template<typename Z>

[Code] ,....

View 1 Replies View Related

C++ :: Application That Has One Static Library Dependency - Linking Error

Feb 16, 2012

I am trying to build an application that has one static library dependency, however I am getting this error when linking:

1>ClCompile:
1> All outputs are up-to-date.
1>LINK : fatal error LNK1104: cannot open file 'TestWrapperLib.obj'

Why I might be getting that? I have the .lib in the depends line, and the directory where it is at in the include line.

View 1 Replies View Related

C++ :: Template Definition Error

Apr 16, 2013

I have an issue converting VC++6 code to VC++ 2010. The following template function definition is not allowed by the new compiler:

template <> void AFXAPI DelElems <CBrush*> ( CPen** objects, int count ) {
for ( int i = 0; i < count; i++, objects++ )
if (*objects)
delete *objects;
}

All errors refer to the header of the template function:

- syntax error : '<'
- syntax error : missing ';' before '<'
- 'DelElems' : illegal use of type 'void'
- unrecognizable template declaration/definition

View 4 Replies View Related

C :: Function That Will Work For Both Dynamic And Static Implementations Of A Function To Get Transverse Of Matrix

Feb 11, 2013

i need a function that will work for both dynamic and static implementations of a function to get the transverse of a matrix. so far, i have this

Code:

matrix transpose(matrix m)
{
int row, col;
row = m.com_dim;
col= m.row_dim;
}

[code]....

this works well with my static implementation, but when i try it in dynamic it gives me errors. the function has to be the same for both dynamic and static implementation

View 4 Replies View Related

C++ :: Creating Public And Static Field In A Class - Unresolved External Symbol Error

Apr 5, 2014

I'm trying to create a public and static field in a class called ResourceManager. But when trying to access the field even from inside the class it wont work. I'm getting this error message:

Error 1 error LNK2001: unresolved external symbol "public: static int ResourceManager::num" (?num@ResourceManager@@2HA)

Here's my code:
ResourceManager.h

Code:

class ResourceManager {
public:
static int num;
static void loadContent();

[Code] .....

I'm using Visual Studio 2012.

View 2 Replies View Related

C++ :: Linker Error In Template Code

Jan 27, 2015

I was working on template and found the linker error while compiling the code.

Below is the code:

Code: //Template1.h: Header file where template define
#ifndef __Template1_H__
#define __Template1__
template <typename T,typename T1> class A
{
T a;
T1 b;
public:
A(T ,T1 ) ;

[code].....

View 8 Replies View Related

C++ :: Array Error Using Template Class

Dec 3, 2014

How to assign the array in object Q to the 12 months, Dec through Jan. I then have to sort the array and display the strings from Jan to Dec.

// main.cpp

#include <iostream>
#include <string>
#include <cstring>
#include <ctime>
#include <algorithm>
using namespace std;
// Declare template class
template <class T, int n>

[Code] ....

View 8 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved