---
name: "ACE_Based_Pointer"
section: "3"
platform: "linux"
package: "libace-doc"
version: "5.0.7-4"
release: "Debian 2.2 (Potato)"
platforms: ["linux"]
url: "https://new.carta.tech/ACE_Based_Pointer"
---

# ACE\_Based\_Pointer(3)

A smart proxy that keeps track of the relative offset of a "pointer" from its base address.

## NAME

ACE\_Based\_Pointer -  A smart proxy that keeps track of the relative offset of a "pointer" from its base address.

## SYNOPSIS

```
#include <ace/Based_Pointer_T.h>
template<class CONCRETE>
class ACE_Based_Pointer : public ACE_Based_Pointer_Basic<CONCRETE>
{
  public:
    ACE_Based_Pointer (void);
    ACE_Based_Pointer (CONCRETE *initial);
    ACE_Based_Pointer (const ACE_Based_Pointer<CONCRETE> &);
    void operator = (const ACE_Based_Pointer<CONCRETE> &);
    void operator = (CONCRETE *from);
    CONCRETE *operator-> (void);
};
```

## DESCRIPTION

This class makes it possible to transparently use "pointers" in shared memory as easily as programming with pointers to local memory by overloading the C++ delegation operator -().

## Initialization method.

```
ACE_Based_Pointer (void);
```

Constructor.  See constructor for ACE\_Based\_Pointer\_Basic for details.

```
ACE_Based_Pointer (CONCRETE *initial);
```

Initialize this object using the initial pointer.

```
ACE_Based_Pointer (const ACE_Based_Pointer<CONCRETE> &);
```

Copy constructor (not implemented yet).

```
void operator = (const ACE_Based_Pointer<CONCRETE> &);
```

Assignment operator.

```
void operator = (CONCRETE *from);
```

Pseudo-assignment operator.

```
CONCRETE *operator-> (void);
```

The C++ "delegation operator".

## AUTHOR

Dietrich Quehl Dietrich.Quehl@med.siemens.de and Douglas C. Schmidt schmidt@.cs.wustl.edu

## LIBRARY

ace
